Remote control of dialysis machines

ABSTRACT

This disclosure relates to remote control of dialysis machines. In certain aspects, a method includes receiving a request for a network connection from a dialysis machine and establishing the network connection with the dialysis machine. The method also includes receiving, from a client device, a request to access the dialysis machine, authorizing the client device to access the dialysis machine, receiving, from the dialysis machine, information pertaining to an operation of the dialysis machine, and providing, to the client device, the received information.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation and claims priority under 35 U.S.C. §120 to U.S. application Ser. No. 14/865,173, filed Sep. 25, 2015, whichclaims priority to U.S. application Ser. No. 14/288,442, filed May 28,2014, now U.S. Pat. No. 9,178,891 issued Nov. 3, 2015, which claimspriority to U.S. application Ser. No. 13/298,740, filed Nov. 17, 2011,now U.S. Pat. No. 8,769,625 issued Jul. 1, 2014. The content of each ofthese applications are hereby incorporated by reference in theirentirety.

TECHNICAL BACKGROUND

This invention relates to remote control of dialysis machines.

BACKGROUND

Renal dysfunction or failure and, in particular, end-stage renaldisease, causes the body to lose the ability to remove water andminerals and excrete harmful metabolites, maintain acid-base balance andcontrol electrolyte and mineral concentrations within physiologicalranges. Toxic uremic waste metabolites, including urea, creatinine, anduric acid, accumulate in the body's tissues which can result in aperson's death if the filtration function of the kidney is not replaced.

Dialysis is commonly used to replace kidney function by removing thesewaste toxins and excess water. In one type of dialysistreatment−hemodialysis−toxins are filtered from a patient's bloodexternally in a hemodialysis machine. Blood passes from the patientthrough a dialyzer separated by a semi-permeable membrane from a largevolume of externally-supplied dialysis solution. The waste and toxinsdialyze out of the blood through the semi-permeable membrane into thedialysis solution, which is then typically discarded.

The dialysis solutions or dialysates used during hemodialysis typicallycontain sodium chloride and other electrolytes, such as calcium chlorideor potassium chloride, a buffer substance, such as bicarbonate oracetate, and acid to establish a physiological pH, plus optionally,glucose or another osmotic agent.

SUMMARY

In one aspect of the invention, a method includes receiving a requestfor a network connection from a dialysis machine, and establishing thenetwork connection with the dialysis machine. The method also includesreceiving, from a client device, a request to access the dialysismachine and authorizing the client device to access the dialysismachine. The method also includes receiving, from the dialysis machine,information pertaining to an operation of the dialysis machine andproviding, to the client device, the received information.

In another aspect of the invention, a method includes a dialysis machinesending a request, to a server, to establish a network connection withthe server and receiving an access request from the server, the accessrequest requesting access to the dialysis machine by the server. Themethod also includes providing a response to the access request andproviding data to the server comprising information pertaining to anoperation of the dialysis machine.

In another aspect of the invention, a system includes a server, adialysis machine configured to connect to the server through a network,and a client device configured to connect to the server through thenetwork. The server is configured to maintain an access control list todetermine whether the client device is authorized to connect to thedialysis machine. The server is also configured to provide a connectionfor transfer of data between the dialysis machine and the client device.

Implementations can include one or more of the following features.

In certain implementations, the method also includes receiving, from theclient device, instructions for the dialysis machine and providing, tothe dialysis machine, the received instructions.

In some implementations, the method also includes receiving a connectionfrom a second dialysis machine and receiving, from a second clientdevice, a request to access the second dialysis machine. The method alsoincludes authorizing the second client device to access the seconddialysis machine, receiving, from the second dialysis machine,information pertaining to an operation of the second dialysis machine,and providing, to the second client device, the information receivedfrom the second dialysis machine.

In certain implementations, the method also includes assigning a proxyport for communication with each dialysis machine.

In certain implementations, the client device and the second clientdevice are the same device.

In certain implementations, authorizing the client device comprisesusing an access control list stored on the data processor.

In some implementations, the access control list is configured to allowupdating of a set of client devices that are authorized to access thedialysis machine by updating, at the data processor, the access controllist stored on the data processor.

In certain implementations, the data processor is at a remote locationfrom the dialysis machine.

In certain implementations, the data processor is at a clinic.

In some implementations, the dialysis machine is at a home of a patient.

In certain implementations, the client device and the data processor arethe same device.

In certain implementations, the method further includes receivinginstructions from the server and executing the received instructions.

In some implementations, the server is further configured for receivinga request for a network connection from the dialysis machine andestablishing the network connection with the dialysis machine. Theserver is further configured for receiving, from the client device, arequest to access the dialysis machine and authorizing the client deviceto access the dialysis machine. The server is also configured forreceiving, from the dialysis machine, information pertaining to anoperation of the dialysis machine and providing, to the client device,the received information.

In certain implementations, the server is further configured forreceiving, from the client device, instructions for the dialysis machineand providing, to the dialysis machine, the received instructions.

In certain implementations, the system further includes a seconddialysis machine; and a second server. The server is also configured forreceiving a connection from the second dialysis machine and receiving,from the second client device, a request to access the second dialysismachine. The server is also configured for authorizing the second clientdevice to access the second dialysis machine and receiving, from thesecond dialysis machine, information pertaining to an operation of thesecond dialysis machine. The server is also configured for providing, tothe second client device, the information received from the seconddialysis machine.

In some implementations, the server is further configured for assigninga proxy port for communication with each dialysis machine.

Implementations can include one or more of the following advantages.

In some implementations, the methods described provide remote control ofdialysis machines. By controlling a dialysis machine remotely, a patientusing the dialysis machine need not be in the same location as anoperator of the machine. Thus, a patient can receive dialysis throughthe machine at a more convenient location, such as the patient's home.Additionally, multiple machines can be in different locations while theremote controller can be in one location. As such, the operator can moreeasily monitor and control more than one machine at a time. Furthermore,as a remote server is used to control access to the dialysis machines,the users at the dialysis machines need not know how to update accesscontrols or configuration settings. The controls and configurations atthe dialysis machine can be simplified, allowing less technologicallysophisticated users to use the dialysis machines at remote locations,such as their homes. Additionally, updates or changes can be made moreefficiently as only the server needs to be updated, rather than multipledialysis machines located in different places.

DESCRIPTION OF FIGURES

FIG. 1 is a schematic diagram of a system including a hemodialysissystem that can be controlled remotely.

FIG. 2 is a schematic illustration of the hemodialysis machine of FIG.1.

FIG. 3 illustrates a screen shot of the user interface of thehemodialysis system of FIG. 1.

FIG. 4 is a flow chart depicting a method of remotely controlling thehemodialysis machine of FIG. 1.

DETAILED DESCRIPTION

In general, the invention relates to systems and methods for remotelycontrolling dialysis machines. In some aspects of the invention, ahemodialysis machine includes a controller that controls thehemodialysis machine, to carry out a hemodialysis treatment. Thecontroller receives signals from the hemodialysis machine that indicatestates of the machine, and provides instructions that control themachine. The controller connects to a proxy server through a network.The proxy server provides a virtual control, reflecting the controllerof the hemodialysis machine to a server through the network. A clientdevice can connect to the server through the network to receive theinformation from the proxy server so that a user can see the virtualcontrol from the client device. Thus, the user can control thehemodialysis machine remotely, monitoring the operation of thehemodialysis machine and also providing instructions to the hemodialysismachine through the proxy server via the network and server. Thehemodialysis machine can also include video and audio transmissioncapabilities, through which a patient can communicate with the usercontrolling the hemodialysis machine at the client device throughstreaming video and audio. For example, both the hemodialysis machineand the client device can have video cameras, which can allow thepatient to see the user on a screen of the hemodialysis machine, and theuser to see the patient on a screen of the client device. Thehemodialysis machine can include multiple cameras to send videoinformation showing various connections between the patient and thehemodialysis machine and between components on the hemodialysis machine.The hemodialysis machine can also include an internet protocol (IP)phone through which the hemodialysis machine can transmit voice data tothe client device.

Referring to FIG. 1, a remote control hemodialysis system environment100 includes a dialysis machine 102 that is configured to connect to aserver 104 through a network 110. The server 104 generates a proxy forthe dialysis machine 102 and a virtual controller for the dialysismachine 102. A client device 108 connects to the server 104 through thenetwork 110. The dialysis machine 102 communicates with the proxy on theserver 104 to provide information about operations on the dialysismachine 102. The server 104 provides the information from the proxy tothe client device 108. A remote user at the client device 108 thusreceives information from the dialysis machine 102, and monitors theoperation of the dialysis machine 102. The remote user also providesinstructions through the client device 108 to the dialysis machine 102.The instructions input by the remote user are sent to the server 104through the network 110. The server relays the instructions through theproxy to the dialysis machine 102 for execution.

Referring to FIG. 2, a dialysis system 200 includes the dialysis machine102 and a disposable blood line set 103 that is operatively connected tothe face of the dialysis machine 102. The dialysis machine 102 includesa control panel 202, which has a display 204 for providing a userinterface to monitor operation of the dialysis machine 102. The machine102 also includes a keypad 206 for the user to input instructions forthe dialysis machine 102. During treatment the disposable blood line set103, which includes a dialyzer, is connected to the machine 102 and to apatient to permit the patient's blood to circulate through the fluidline set and dialyzer. The dialysis machine 102 includes various sensors(e.g., pressure sensors, air sensors, temperature sensors, etc.) thatcooperate with the disposable fluid line set to monitor treatmentparameters. Current treatment data, such as treatment time remaining,arterial venous, and transmembrane pressures, ultrafiltration (UF) data,and dialysate data is shown on the display 204. The display 204 alsoshows status of the treatment and any alarm or alert messages asnecessary.

FIG. 3 is a screen shot of the display 204 of the dialysis machine 102.The display 204 shows a status box 206, indicating a status of anoperation. In the example display shown, the dialysis operation has beenpaused. The display 204 also shows treatment data using various bloodpressure gauges 208, an UF module 210, and a dialysate module 212. Thedisplay 204 also shows a menu button row 214 that provides variousoptions to the user. For example, the user can select one of the menuoptions from the menu button row 214 to receive different types ofinformation through the display 204. The user enters input through thekeypad 206 to provide instructions to the dialysis machine.

The display 204 updates to show current data during the operation of thedialysis machine 102. The display 204 also shows different screens atvarious stages of the machine's use, such as a startup screen, testingscreens, shutdown screens, and other user interfaces.

On establishing a connection between the client device 108 and thedialysis machine 102, the client device 108 is provided data to displaythe same information as shown on the display 204 of the dialysis machine102. Thus, for example, a remote user at the client device 108 would seethe same screen shot as shown in FIG. 3 at such a stage in a dialysistreatment.

FIG. 4 depicts an example process for remote control of the dialysismachine 102 (400). On startup, the dialysis machine 102 connects to theserver 104 (402). The dialysis machine 102 requests an IP address of theserver 104 so that the dialysis machine 102 can establish a connectionwith the server 104 via the network. On establishing a connection withthe dialysis machine 102, the server 104 creates a proxy (404) for thedialysis machine 102. The server 104 uses different ports as proxies foreach dialysis machine 102. Thus, the server 104 maintains a list of eachdialysis machine 102 connected to the server 104 and the proxy port usedto communicate with each dialysis machine 102. The server 104 providesthe port number to the dialysis machine 102 so that the dialysis machine102 communicates to the appropriate proxy on the server 104.

The server 104 then requests authorization from the dialysis machine 102(406). A user at the dialysis machine 102 decides whether or not toallow access to the proxy. The user can allow different levels of accessto the proxy, such as no access, authority to monitor the dialysismachine 102 only, or authority to control the dialysis machine 102. Inthis example process, the user grants full access (408) to the proxy.

The server 104 then creates a virtual control (410). The virtual controlprovides an interface for the dialysis machine 102, such as the userinterface provided by the control panel 202 of the dialysis machine 102.The virtual control shows the same information as shown on the display204 of the dialysis machine 102. Input is provided to the virtualcontrol in a similar manner as provided to the control panel 202.

After the server 104 creates a virtual control, the client device 108requests connection to the dialysis machine 102 (412). The client device108 provides this request to the server 104. The server 104 checks theauthorization of the client device 108 (414). The server 104 maintains alist of all the proxies and dialysis machines 102 that are connected tothe server 104. The server 104 also maintains an access control list toauthorize access to client devices 108 to dialysis machines 102. Forexample, the server 104 can require a login/password combination foreach client device 108. The login/password combination is different foreach dialysis machine 102 connected to the server 104.

Upon authorization, the server 104 provides access (416) to the clientdevice 108. The server 104 provides the virtual control to the clientdevice 108. The client device 108 receives the virtual control (418) anddisplays the virtual control to a remote user at the client device 108.The remote user is thus able to see the same controls as the user at thedialysis machine 102.

The dialysis machine 102 then starts an operation (420). In thisexample, the operation is a dialysis treatment started by the user atthe dialysis machine 102. Alternatively, the operation can also bestarted by a remote user at the client device 108. As the treatmentprogresses, the display 204 shows treatment data on the dialysis machine102. The dialysis machine 102 also transmits the treatment data (422) tothe server 104. The server 104 receives the treatment data and transmitsthe data (424) to the client device 108. The client device receives thetreatment data and displays the data via the virtual control. Thus, theremote user can monitor the operation (426) of the dialysis machine 102at the client device 108.

The remote user also provides instructions (428) at the client device108 to the dialysis machine 102. For example, the remote user can pausethe dialysis treatment or request other information through the menubuttons shown on the virtual control. The client device 108 transmitsthe instructions to the server 104. The server 104 receives theinstructions and transmits the instructions (430) to the dialysismachine 102. The dialysis machine 102 receives the instructions andexecutes the instructions (432). In this manner, the remote usercontrols the dialysis machine 102 from a location remote to the dialysismachine 102.

While the process shown in FIG. 4 and the example environment of FIG. 1depicts one dialysis machine 102 and one client device 108, the systemcan include multiple dialysis machines and multiple client devicesconnected to the server 104. The server 104 can maintain a list of allthe dialysis machines, as well as all the client devices. The server 104can include an access control list that determines which client devicescan access which dialysis machines. In some implementations, a singleclient device can monitor and/or control multiple dialysis machines.Conversely, in some implementations, multiple client devices can monitorand/or control a single dialysis machine. The client machines can have ahierarchy of control, which can determine what instructions provided tothe dialysis machine receive priority over other instructions from otherclient machines. The server 104 can receive a request for authorizationfor each of the client machines that request access to the dialysismachine 102. In some implementations, the dialysis machine 102 canreceive a request for authorization for each of the client machines thatrequest access to the dialysis machine 102. The local controls at thedialysis machine can also be included in the hierarchy of controls. Insome implementations, the local controls at the dialysis machine 102have the highest priority over all remote controls from client devices.

While the proxies generated by the server 104 have been described asports used by the server 104, the proxies can also each be separateproxy server devices. Thus, a dialysis machine can connect to a separateproxy server, which in turn can connect to the server 104.

While the server 104 and the client device 108 have been described asseparate computing devices, the client device 108 and the server 104 canalso be the same computing device. Thus, the server 104 can provide thefunctions of the client device 108 to a remote user at the server 104.

While the access control on the server 104 has been described as using alogin/password combination, various access control methods can be used.For example, the server 104 can maintain a list of specific clientdevices (e.g., using IP addresses and/or MAC addresses) that areauthorized to access specific dialysis machines. The server 104 can alsorequire a login/password combination, such that only authorized userscan access specific dialysis machines from the specific client devices.For example, the client devices allowed access can be restricted tothose in a specific hospital. Users can be required to log in to accessdialysis machines located in patients' homes, with different logincredentials required for different dialysis machines.

While the server 104 has been described as a single computing device,the server 104 can also be a server system including multiple computingdevices.

While only one controller is described on the dialysis machine 102,multiple controllers may alternatively be used.

While the user input device has been described as a keypad 206, the userinput device can also include a keyboard, a trackpad, and other devicesthrough which a user can provide input to the dialysis machine 102.

While the client device 108 has been depicted as a computer, the clientdevice can be any computing device that can connect to a network,including, for example, mobile phones, tablet computers, laptops,netbooks, and smartphones.

While FIG. 3 shows an example screen shot of the display 204 of thedialysis machine 102, the display 204 can also show video transmitted toand from the client device.

While the dialysis machine has been described to optionally include anIP phone, the dialysis machine can be configured to include a microphoneand voice data transmission capability.

Implementations of the subject matter and the operations described inthis specification can be implemented in digital electronic circuitry,or in computer software, firmware, or hardware, including the structuresdisclosed in this specification and their structural equivalents, or incombinations of one or more of them. Implementations of the subjectmatter described in this specification can be implemented as one or morecomputer programs, i.e., one or more modules of computer programinstructions, encoded on computer storage medium for execution by, or tocontrol the operation of, data processing apparatus. Alternatively or inaddition, the program instructions can be encoded on an artificiallygenerated propagated signal, for example, a machine-generatedelectrical, optical, or electromagnetic signal, that is generated toencode information for transmission to suitable receiver apparatus forexecution by a data processing apparatus. A computer storage medium canbe, or be included in, a computer-readable storage device, acomputer-readable storage substrate, a random or serial access memoryarray or device, or a combination of one or more of them. Moreover,while a computer storage medium is not a propagated signal, a computerstorage medium can be a source or destination of computer programinstructions encoded in an artificially generated propagated signal. Thecomputer storage medium can also be, or be included in, one or moreseparate physical components or media (for example, multiple CDs, disks,or other storage devices).

The operations described in this specification can be implemented asoperations performed by a data processing apparatus on data stored onone or more computer-readable storage devices or received from othersources.

The term “data processing apparatus” encompasses all kinds of apparatus,devices, and machines for processing data, including by way of example aprogrammable processor, a computer, a system on a chip, or multipleones, or combinations, of the foregoing. The apparatus can includespecial purpose logic circuitry, for example, an FPGA (fieldprogrammable gate array) or an ASIC (application specific integratedcircuit). The apparatus can also include, in addition to hardware, codethat creates an execution environment for the computer program inquestion, for example, code that constitutes processor firmware, aprotocol stack, a database management system, an operating system, across-platform runtime environment, a virtual machine, or a combinationof one or more of them. The apparatus and execution environment canrealize various different computing model infrastructures, such as webservices, distributed computing and grid computing infrastructures.

A computer program (also known as a program, software, softwareapplication, script, or code) can be written in any form of programminglanguage, including compiled or interpreted languages, declarative orprocedural languages, and it can be deployed in any form, including as astandalone program or as a module, component, subroutine, object, orother unit suitable for use in a computing environment. A computerprogram may, but need not, correspond to a file in a file system. Aprogram can be stored in a portion of a file that holds other programsor data (for example, one or more scripts stored in a markup languagedocument), in a single file dedicated to the program in question, or inmultiple coordinated files (for example, files that store one or moremodules, sub programs, or portions of code). A computer program can bedeployed to be executed on one computer or on multiple computers thatare located at one site or distributed across multiple sites andinterconnected by a communication network.

The processes and logic flows described in this specification can beperformed by one or more programmable processors executing one or morecomputer programs to perform actions by operating on input data andgenerating output. The processes and logic flows can also be performedby, and apparatus can also be implemented as, special purpose logiccircuitry, for example, an FPGA (field programmable gate array) or anASIC (application specific integrated circuit).

Processors suitable for the execution of a computer program include, byway of example, both general and special purpose microprocessors, andany one or more processors of any kind of digital computer. Generally, aprocessor will receive instructions and data from a read only memory ora random access memory or both. The essential elements of a computer area processor for performing actions in accordance with instructions andone or more memory devices for storing instructions and data. Generally,a computer will also include, or be operatively coupled to receive datafrom or transfer data to, or both, one or more mass storage devices forstoring data, for example, magnetic, magneto optical disks, or opticaldisks. However, a computer need not have such devices. Moreover, acomputer can be embedded in another device, for example, a mobiletelephone, a personal digital assistant (PDA), a mobile audio or videoplayer, a game console, a Global Positioning System (GPS) receiver, or aportable storage device (for example, a universal serial bus (USB) flashdrive), to name just a few. Devices suitable for storing computerprogram instructions and data include all forms of nonvolatile memory,media and memory devices, including by way of example semiconductormemory devices, for example, EPROM, EEPROM, and flash memory devices;magnetic disks, for example, internal hard disks or removable disks;magneto optical disks; and CD ROM and DVD-ROM disks. The processor andthe memory can be supplemented by, or incorporated in, special purposelogic circuitry.

To provide for interaction with a user, implementations of the subjectmatter described in this specification can be implemented on a displaydevice (e.g., the display device of the dialysis machine 102), forexample, a CRT (cathode ray tube) or LCD (liquid crystal display)monitor, for displaying information to the user and a keyboard or keypadand/or a pointing device, for example, a mouse or a trackball, by whichthe user can provide input to the computer. Other kinds of devices canbe used to provide for interaction with a user as well; for example,feedback provided to the user can be any form of sensory feedback, forexample, visual feedback, auditory feedback, or tactile feedback; andinput from the user can be received in any form, including acoustic,speech, or tactile input.

While this specification contains many specific implementation details,these should not be construed as limitations on the scope of anydisclosures or of what may be claimed, but rather as descriptions offeatures specific to particular implementations of particulardisclosures. Certain features that are described in this specificationin the context of separate implementations can also be implemented incombination in a single implementation. Conversely, various featuresthat are described in the context of a single implementation can also beimplemented in multiple implementations separately or in any suitablesubcombination. Moreover, although features may be described above asacting in certain combinations and even initially claimed as such, oneor more features from a claimed combination can in some cases be excisedfrom the combination, and the claimed combination may be directed to asubcombination or variation of a subcombination.

What is claimed is:
 1. A method performed by a data processor, themethod comprising: receiving a request for a network connection from adialysis machine; establishing the network connection with the dialysismachine; receiving, from a client device, a request to access thedialysis machine; authorizing the client device to access the dialysismachine; receiving, from the dialysis machine, information pertaining toan operation of the dialysis machine; providing, to the client device,the received information; receiving, from the client device, first videodata obtained by a camera of the client device; providing, to a displayof the dialysis machine, video based on the first video data; receiving,from the dialysis machine, second video data obtained by a camera of thedialysis machine; and providing, to a display of the client device,video based on the second video data, wherein an interface of the clientdevice is configured to present controls for controlling the dialysismachine.
 2. The method of claim 1, further comprising: receiving, fromthe client device, instructions for the dialysis machine; and providing,to the dialysis machine, the received instructions.
 3. The method ofclaim 1, further comprising: receiving a connection from a seconddialysis machine; receiving, from a second client device, a request toaccess the second dialysis machine; authorizing the second client deviceto access the second dialysis machine; receiving, from the seconddialysis machine, information pertaining to an operation of the seconddialysis machine; providing, to the second client device, theinformation received from the second dialysis machine; receiving, fromthe second client device, instructions for the second dialysis machine;and providing, to the second dialysis machine, the receivedinstructions.
 4. The method of claim 3, further comprising assigning aproxy port for communication with each dialysis machine.
 5. The methodof claim 3, wherein the client device and the second client device arethe same device.
 6. The method of claim 1, wherein authorizing theclient device comprises using an access control list stored on the dataprocessor.
 7. The method of claim 6, wherein the access control list isconfigured to allow updating of a set of client devices that areauthorized to access the dialysis machine by updating, at the dataprocessor, the access control list stored on the data processor.
 8. Themethod of claim 1, wherein the data processor is at a remote locationfrom the dialysis machine.
 9. The method of claim 8, wherein the dataprocessor is at a clinic.
 10. The method of claim 9, wherein thedialysis machine is at a home of a patient.
 11. The method of claim 1,wherein the client device and the data processor are the same device.12. The method of claim 1, wherein authorizing the client device toaccess the dialysis machine comprises receiving a user login andpassword from the client device.
 13. The method of claim 3, furthercomprising: receiving, from a third client device, a request to accessthe second dialysis machine; authorizing the third client device toaccess the second dialysis machine; providing, to the third clientdevice, the information received from the second dialysis machine;receiving, from the third client device, instructions for the seconddialysis machine; and providing, to the second dialysis machine, thereceived instructions.
 14. The method of claim 13, wherein theinstructions received from the second client device for the seconddialysis machine have a priority over the instructions received from thethird client device for the second dialysis machine.
 15. The method ofclaim 14, wherein, when there is a conflict between the instructionsreceived from the second client device for the second dialysis machineand the instructions received from the third client device for thesecond dialysis machine, the instructions received from the secondclient device are executed by the second dialysis machine, and theinstructions received from the third client device are not executed bythe second dialysis machine.
 16. The method of claim 1, wherein theinformation provided to the client device comprises voice data.
 17. Themethod of claim 1, wherein the information provided to the client devicecomprises one or both of video and audio.
 18. The method of claim 17,wherein the video and audio comprise information related to connectionsand components of the dialysis machine.
 19. The method of claim 1,further comprising: receiving, from the client device, a video stream;and providing, to the display of the dialysis machine, the video stream.20. The method of claim 19, wherein the video stream includes audio. 21.The method of claim 1, wherein the information pertaining to anoperation of the dialysis machine comprises data related to a dialysistreatment.
 22. The method of claim 1, wherein the information pertainingto an operation of the dialysis machine comprises one or more of timeremaining for a dialysis treatment, arterial pressure, venous pressure,transmembrane pressure, data related to ultrafiltration (UF), datarelated to dialysate, treatment status, and alarm information.
 23. Themethod of claim 1, wherein the information pertaining to an operation ofthe dialysis machine is presented by the interface of the client device.24. The method of claim 23, wherein the interface presents at least someof the information that is presented on the display of the dialysismachine.
 25. The method of claim 1, wherein the client device is amobile computing device.
 26. The method of claim 2, wherein theinstructions for the dialysis machine comprise one or more of initiatinga dialysis treatment and pausing a dialysis treatment.
 27. The method ofclaim 2, wherein at least some of the instructions for the dialysismachine are for setting one or more treatment parameters for a dialysistreatment.
 28. The method of claim 2, further comprising providing, tothe client device, a virtual control interface, wherein the instructionsfor the dialysis machine are received from the client device through thevirtual control interface.
 29. The method of claim 1, wherein a videostream includes the first video data and the second video data.
 30. Themethod of claim 29, wherein the video stream enables a patient receivingtreatment from the dialysis machine and a user of the client device tocommunicate.
 31. The method of claim 30, wherein the user of the clientdevice is located at a hospital.
 32. The method of claim 1, wherein thevideo based on the first video data includes instructions forcontrolling operations of the dialysis machine that are provided by auser of the client device.
 33. The method of claim 1, wherein the videobased on the second video data is used by a user of the client device tomonitor operations of the dialysis machine.
 34. The method of claim 1,further comprising: receiving, from the client device, first audio dataobtained by a microphone of the client device; providing, to a speakerof the dialysis machine, audio based on the first audio data; receiving,from the dialysis machine, second audio data obtained by a microphone ofthe dialysis machine; and providing, to a speaker of the client device,audio based on the second audio data.
 35. A method performed on a dataprocessor of a dialysis machine, the method comprising: sending arequest, to a server, to establish a network connection with the server;receiving an access request from the server, the access requestrequesting access to the dialysis machine by the server; providing aresponse to the access request; providing, to a client device, via theserver, information pertaining to an operation of the dialysis machine;receiving, from the client device, first video data obtained by a cameraof the client device; providing, to a display of the dialysis machine,video based on the first video data; and sending, to the client device,second video data obtained by a camera of the dialysis machine, whereinthe client device provides video based on the second video data to adisplay of the client device; wherein an interface of the client deviceis configured to present controls for controlling the dialysis machine.36. The method of claim 35, further comprising: receiving, from theclient device, via the server, instructions; and executing the receivedinstructions.
 37. The method of claim 35, wherein the dialysis machineis at a remote location from the server.
 38. The method of claim 36,wherein a virtual control interface is provided to the client devicethat is configured to access the dialysis machine, and the instructionsare received from the client device through the virtual controlinterface.
 39. A system comprising: a server; a dialysis machineconfigured to connect to the server through a network; and a clientdevice configured to connect to the server through the network, whereinthe server is configured for: maintaining an access control list todetermine whether the client device is authorized to connect to thedialysis machine; and providing a connection for transfer of databetween the dialysis machine and the client device, the transfer of datacomprising: receiving, from the client device, first video data obtainedby a camera of the client device; providing, to a display of thedialysis machine, video based on the first video data; receiving, fromthe dialysis machine, second video data obtained by a camera of thedialysis machine; and providing, to a display of the client device,video based on the second video data, wherein an interface of the clientdevice is configured to present controls for controlling the dialysismachine.
 40. The system of claim 39, wherein the server is configuredfor: receiving a request for a network connection from the dialysismachine; establishing the network connection with the dialysis machine;receiving, from the client device, a request to access the dialysismachine; authorizing the client device to access the dialysis machine;receiving, from the dialysis machine, information pertaining to anoperation of the dialysis machine; and providing, to the client device,the received information.
 41. The system of claim 39, wherein the serveris further configured for: receiving, from the client device,instructions for the dialysis machine; and providing, to the dialysismachine, the received instructions.
 42. The system of claim 39, furthercomprising a second dialysis machine, wherein the server is furtherconfigured for: receiving a connection from the second dialysis machine;receiving, from a second client device, a request to access the seconddialysis machine; authorizing the second client device to access thesecond dialysis machine; receiving, from the second dialysis machine,information pertaining to an operation of the second dialysis machine;providing, to the second client device, the information received fromthe second dialysis machine; receiving, from the second client device,instructions for the second dialysis machine; and providing, to thesecond dialysis machine, the received instructions.
 43. The system ofclaim 42, wherein the server is further configured for assigning a proxyport for communication with each dialysis machine.
 44. The system ofclaim 42, wherein the client device and the second client device are thesame device.
 45. The system of claim 39, wherein the access control listis configured to allow updating of a set of client devices that areauthorized to access the dialysis machine by updating, at the server,the access control list.
 46. The system of claim 39, wherein the serveris at a remote location from the dialysis machine.
 47. The system ofclaim 46, wherein the server is at a clinic.
 48. The system of claim 47,wherein the dialysis machine is at a home of a patient.
 49. The systemof claim 40, wherein authorizing the client device to access thedialysis machine comprises receiving a user login and password from theclient device.
 50. The system of claim 42, wherein the server is furtherconfigured for: receiving, from a third client device, a request toaccess the second dialysis machine; authorizing the third client deviceto access the second dialysis machine; providing, to the third clientdevice, the information received from the second dialysis machine;receiving, from the third client device, instructions for the seconddialysis machine; and providing, to the second dialysis machine, thereceived instructions.
 51. The system of claim 50, wherein theinstructions received from the second client device for the seconddialysis machine have a priority over the instructions received from thethird client device for the second dialysis machine.
 52. The system ofclaim 51, wherein, when there is a conflict between the instructionsreceived from the second client device for the second dialysis machineand the instructions received from the third client device for thesecond dialysis machine, the instructions received from the secondclient device are executed by the second dialysis machine, and theinstructions received from the third client device are not executed bythe second dialysis machine.
 53. The system of claim 40, wherein theinformation provided to the client device comprises voice data.
 54. Thesystem of claim 40, wherein the information provided to the clientdevice comprises one or both of video and audio.
 55. The system of claim54, wherein the video and audio comprise information related toconnections and components of the dialysis machine.
 56. The system ofclaim 40, wherein the server is further configured for: receiving, fromthe client device, a video stream; and providing, to the display of thedialysis machine, the received video stream.
 57. The system of claim 56,wherein the video stream includes audio.
 58. The system of claim 40,wherein the information pertaining to an operation of the dialysismachine comprises data related to a dialysis treatment.
 59. The systemof claim 40, wherein the information pertaining to an operation of thedialysis machine comprises one or more of time remaining for a dialysistreatment, arterial pressure, venous pressure, transmembrane pressure,data related to ultrafiltration (UF), data related to dialysate,treatment status, and alarm information.
 60. The system of claim 40,wherein the information pertaining to an operation of the dialysismachine is presented by the interface of the client device.
 61. Thesystem of claim 60, wherein the interface presents at least some of theinformation that is presented on the display of the dialysis machine.62. The system of claim 39, wherein the client device is a mobilecomputing device.
 63. The system of claim 41, wherein the instructionsfor the dialysis machine comprise one or more of initiating a dialysistreatment and pausing a dialysis treatment.
 64. The system of claim 41,wherein at least some of the instructions for the dialysis machine arefor setting one or more treatment parameters for a dialysis treatment.65. The system of claim 41, wherein the server is further configured forproviding, to the client device, a virtual control interface, whereinthe instructions for the dialysis machine are received from the clientdevice through the virtual control interface.